package com.team2.outpatient_sys.service.impl;

import com.team2.outpatient_sys.dao.AdministratorDao;
import com.team2.outpatient_sys.pojo.Administrator;
import com.team2.outpatient_sys.service.AdministratorService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

@Service
public class AdministratorServiceImpl implements AdministratorService {
    @Autowired
    private AdministratorDao administratorDao;

    /**
     * 根据id修改管理员密码的服务的实现
     * @param administrator 管理员信息修改内容的封装对象，包含需要修改的管理员信息的id和newPassword
     * @return 密码修改的服务是否成功完成
     */
    @Override
    public boolean updatePasswordById(Administrator administrator) {
        int affectedRows = administratorDao.updatePasswordById(administrator.getId(), administrator.getPassword());
        return affectedRows == 1;
    }

    /**
     * 根据id获取管理员信息的服务的实现
     * @param adminId 管理员的id
     * @return 获取到的管理员信息的封装对象Administrator
     */
    @Override
    public Administrator getById(Integer adminId) {
        return administratorDao.queryById(adminId);
    }

    /**
     * 根据username获取管理员信息的服务的实现
     * @param username 管理员的用户名username
     * @return 获取到的管理员信息的封装对象Administrator
     */
    @Override
    public Administrator getByUsername(String username) {
        return administratorDao.queryByUsername(username);
    }
}
